Source Code from SGI cust edu classes
This subtree contains the source code portion from SGI edu classes
Copyright © 1991-96 Silicon Graphics, Inc.
Technical Education Development
All Rights Reserved.
Previously, this subtree consisted of the graphics tutorials available
to people who attended SGI's 4D Graphics and Advanced Graphics
courses. All this code was written using true-blue Iris GL. As of
Irix 5.1 and beyond, they have been "retired" and replaced with a
growing set of programs all being implemented in OpenGL.
Current contents of this subtree include:
Check out the Course Catalog: Instructor-led page of class
offerings on www.sgi.com.
For other OpenGL "haunts" See Also:
For other [Open] Inventor "haunts" See Also:
For other Performer "haunts" See Also:
- opengl1: OpenGL Programming 1 Course -- Sample
Programs
This subtree contains the software included in the OpenGL
Programming 1 class course materials. The subtree contains
two libraries, a checkVisual utility program, plus src and
binaries demonstrating the following:
- 01.Windows
Programs that demonstrate how to create windows and set the
background color.
- 02.Rendering
Programs that demonstrate the basic drawing primitives, and
flat and gouraud shading them.
- 03.Viewports
Programs that demonstrate how to set the viewport and the
effect of the aspect ratio.
- 04.Transformations
Programs that demonstrate how to rotate, scale and translate
objects, and set the projection matrix.
- 05.Scene.Modeling
Programs that demonstrate how to use use the basic
transformations to model a scene. Also, demonstrates how the
ordering of effects the net result, and how transformations
can be kept independent using glPushMatrix/glPopMatrix.
- 06.Depth.Buffering
Programs that demonstrate how to use the depth buffer.
- 07.Viewing
Programs that demonstrate how to use gluLookAt() or use the
basic transformations to create a polarview viewing
perspective.
- 08.Animation
Programs that demonstrate how to animate a scene without
flicker.
- 09.Input
Programs that demonstrate how to get input from the mouse and
keyboard, and how to use the mouse position to animate objects.
- 10.Anti-aliasing
Programs that demonstrate how to render objects without the
"jaggies".
- 11.Text
Programs that demonstrate how to render a text string and make
sure that it doesn't get clipped prematurely when the raster
position goes outside the window.
- 12.Lighting.Basics
Programs that demonstrate how to enable basic lighting and set
the normals.
- 13.Lighting.Properties
Programs that demonstrate how to set lighting properties, such
as color, and position, and material properties. Also,
programs that show how to position the lights so that it is
fixed in the scene, moves with the scene, or moves independently
of the objects in the scene.
- 14.Advanced.Lighting
Programs that demonstrate how to enable 2-sided lighting, make
faster material changes, and enable spotlights.
- opengl2: OpenGL Programming 2 Course -- Sample
Programs
This subtree contains the software included in the OpenGL
Programming 2 class course materials. The subtree contains two
libraries, a checkVisual utility program, plus src and binaries
demonstrating the following in OpenGL-speak:
- accum:
programs implementing the accumulation buffer to
achieve effects of scene anti-aliasing, depth-of-field,
and motion blur.
- alpha:
programs implementing alpha blending functionalities
including a demonstration of how the depth-buffer and
spotlights interact.
- clipping:
demonstrates defining and using arbitrary clipping planes.
- dlists:
programs implementing display lists including an
example performing benchmarking which can be run in
either immediate or display list mode, lighting done
with display lists, and creating an outline font and
displaying it using glCallLists().
- feedback:
demonstrates use of OpenGL feedback, where one can toggle
in and out of feedback mode.
- fly:
program lets user "fly" through a simple virtual world.
Input controls enable toggling autopilot, alpha blending,
drawing surface normals, reset eye position, as well as
MOUSE buttons to move the eyepoint and SPACE bar to cycle
wireframe/flat shaded/smooth shaded.
- fog:
demonstrates using different types of fog including
exponential, exponential squared, and linear as well
as altering the density value.
- nurbs:
demonstrates implementing nurbs. Includes various
methods of drawing a rotating NURBS surface where one
can toggle display list/immediate mode and filled/
wireframe/patch mode, as well as drawing a NURBS curve
and 2 other different NURBS surfaces.
- raster:
programs implementing raster positioning and pixel
operations, including creating a collage images,
implementations of the glCopyPixels() and
glPixelZoom() routines, plus displaying an rgb image
and file (and a subimage) in a window and writing
pixel data from the window to an image file.
- selection:
two programs: 1 demonstrates picking, and the other,
selection.
- stencils:
demonstrates a simple application of the stencil planes
to mask an arbitrary screen area.
- superfly:
program lets user "fly" through a simple virtual world.
Input controls enable toggling autopilot, alpha blending,
cycle thru clipping plane modes, debug mode (print
coords), fog, display raster image, drawing surface
normals, reset eye position, selection culling, and
texture mapping, as well as MOUSE buttons to move the
eyepoint, pick a shape and SPACE bar to cycle wireframe/
flat shaded/smooth shaded.
- texture:
programs demonstrating implementing textures, including
using textures with alpha values, using gluBulid2dMipmaps()
to scale and load mipmaps for a single texture image and
then applying this to a polygon; reading a texture from an
rgb file, setting up the texture and a sphere map texture
environment and then applying them; as well as a second
version using automatically generated texture coordinates;
reading in a texture from an rgb file, setting the texture
and the texture environment, then applying the texture to
a rectangular polygon using explicit texture coordinates;
and a demonstration of storing textures in display lists
where the objects are drawn using environment mapping.
Files of interest from "src/tutorials/custEducation" directory
Documentation
Reference
Subdirectories
OR, ...
Copyright © 1991-96, Silicon Graphics, Inc.